[INFO] fetching crate rust-mcp-macros 0.9.0...
[INFO] testing rust-mcp-macros-0.9.0 against master#1f7f8ea0721a3b1eb73e6c6d25cccb371434b320 for pr-154065-1
[INFO] extracting crate rust-mcp-macros 0.9.0 into /workspace/builds/worker-7-tc1/source
[INFO] started tweaking crates.io crate rust-mcp-macros 0.9.0
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate rust-mcp-macros 0.9.0
[INFO] tweaked toml for crates.io crate rust-mcp-macros 0.9.0 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate rust-mcp-macros 0.9.0 on toolchain 1f7f8ea0721a3b1eb73e6c6d25cccb371434b320
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate rust-mcp-macros 0.9.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded rust-mcp-schema v0.10.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] cec7a83653440f8326e8664e31a19e3efd858999fd3bec1e438e6665dcc3b142
[INFO] running `Command { std: "docker" "start" "-a" "cec7a83653440f8326e8664e31a19e3efd858999fd3bec1e438e6665dcc3b142", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cec7a83653440f8326e8664e31a19e3efd858999fd3bec1e438e6665dcc3b142", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cec7a83653440f8326e8664e31a19e3efd858999fd3bec1e438e6665dcc3b142", kill_on_drop: false }`
[INFO] [stdout] cec7a83653440f8326e8664e31a19e3efd858999fd3bec1e438e6665dcc3b142
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c1a3f3b73f6df78d9fd67a7e27d520a616eaf7a3b2adaae811b8d8cca2680c5c
[INFO] running `Command { std: "docker" "start" "-a" "c1a3f3b73f6df78d9fd67a7e27d520a616eaf7a3b2adaae811b8d8cca2680c5c", kill_on_drop: false }`
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling itoa v1.0.17
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling rust-mcp-macros v0.9.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.74s
[INFO] running `Command { std: "docker" "inspect" "c1a3f3b73f6df78d9fd67a7e27d520a616eaf7a3b2adaae811b8d8cca2680c5c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c1a3f3b73f6df78d9fd67a7e27d520a616eaf7a3b2adaae811b8d8cca2680c5c", kill_on_drop: false }`
[INFO] [stdout] c1a3f3b73f6df78d9fd67a7e27d520a616eaf7a3b2adaae811b8d8cca2680c5c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5427e55877e1e1a52180820a7b81d4cf65a29f2c542a3e227f0fa528a7d8e697
[INFO] running `Command { std: "docker" "start" "-a" "5427e55877e1e1a52180820a7b81d4cf65a29f2c542a3e227f0fa528a7d8e697", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling itoa v1.0.17
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling rust-mcp-schema v0.10.0
[INFO] [stderr]    Compiling rust-mcp-macros v0.9.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `ElicitRequestFormParams` and `ElicitRequestUrlParams`
[INFO] [stdout]  --> tests/test_mcp_elicit.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     ElicitRequestFormParams, ElicitRequestParams, ElicitRequestUrlParams, ElicitResultContent,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^                       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `JsonSchema` and `mcp_elicit`
[INFO] [stdout]  --> tests/test_mcp_resource.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use rust_mcp_macros::{mcp_elicit, mcp_resource, mcp_resource_template, JsonSchema};
[INFO] [stdout]   |                       ^^^^^^^^^^                                       ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> tests/test_mcp_resource.rs:94:26
[INFO] [stdout]    |
[INFO] [stdout] 94 |     struct CompanyLogo {};
[INFO] [stdout]    |                          ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rust_mcp_macros::mcp_resource`
[INFO] [stdout]   --> tests/test_mcp_resource.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |     use rust_mcp_macros::mcp_resource;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `api_key` is never read
[INFO] [stdout]   --> tests/test_mcp_resource.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 19 |     struct MyResource {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 20 |         pub api_key: String,
[INFO] [stdout]    |             ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `api_key` is never read
[INFO] [stdout]   --> tests/test_mcp_resource.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |     struct MyResource {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 57 |         pub api_key: String,
[INFO] [stdout]    |             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `email`, and `tags` are never read
[INFO] [stdout]    --> tests/test_mcp_elicit.rs:107:13
[INFO] [stdout]     |
[INFO] [stdout] 106 |     pub struct RequiredFields {
[INFO] [stdout]     |                -------------- fields in this struct
[INFO] [stdout] 107 |         pub name: String,
[INFO] [stdout]     |             ^^^^
[INFO] [stdout] 108 |         pub email: String,
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 109 |         pub tags: Vec<String>,
[INFO] [stdout]     |             ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RequiredFields` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `age` and `active` are never read
[INFO] [stdout]    --> tests/test_mcp_elicit.rs:157:13
[INFO] [stdout]     |
[INFO] [stdout] 156 |     pub struct TypeSensitive {
[INFO] [stdout]     |                ------------- fields in this struct
[INFO] [stdout] 157 |         pub age: i32,
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 158 |         pub active: bool,
[INFO] [stdout]     |             ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TypeSensitive` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `age`, and `is_admin` are never read
[INFO] [stdout]    --> tests/test_mcp_elicit.rs:205:13
[INFO] [stdout]     |
[INFO] [stdout] 204 |     pub struct WithOptionals {
[INFO] [stdout]     |                ------------- fields in this struct
[INFO] [stdout] 205 |         pub name: String,
[INFO] [stdout]     |             ^^^^
[INFO] [stdout] 206 |         pub age: i64,
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 207 |         pub is_admin: bool,
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `WithOptionals` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `token` is never read
[INFO] [stdout]    --> tests/test_mcp_elicit.rs:270:13
[INFO] [stdout]     |
[INFO] [stdout] 269 |     pub struct ExternalForm {
[INFO] [stdout]     |                ------------ field in this struct
[INFO] [stdout] 270 |         pub token: String,
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ExternalForm` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `mcp_elicit`
[INFO] [stdout]  --> tests/test_mcp_tool.rs:4:23
[INFO] [stdout]   |
[INFO] [stdout] 4 | use rust_mcp_macros::{mcp_elicit, JsonSchema};
[INFO] [stdout]   |                       ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CallToolRequestParams`, `ElicitRequestFormParams`, `ElicitRequestParams`, `ElicitResultContentPrimitive`, `ElicitResultContent`, and `RpcError`
[INFO] [stdout]  --> tests/test_mcp_tool.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     CallToolRequestParams, ElicitRequestFormParams, ElicitRequestParams, ElicitResultContent,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 7 |     ElicitResultContentPrimitive, RpcError,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `name`, `email`, and `tags` are never read
[INFO] [stdout]   --> tests/test_mcp_tool.rs:49:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |     struct User {
[INFO] [stdout]    |            ---- fields in this struct
[INFO] [stdout] 48 |         /// This is a fallback description from doc comment.
[INFO] [stdout] 49 |         pub id: i32,
[INFO] [stdout]    |             ^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |         pub name: String,
[INFO] [stdout]    |             ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |         pub email: Option<String>,
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 73 |         pub tags: Vec<String>,
[INFO] [stdout]    |             ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `message` is never read
[INFO] [stdout]    --> tests/test_mcp_tool.rs:125:9
[INFO] [stdout]     |
[INFO] [stdout] 124 |     struct Echo {
[INFO] [stdout]     |            ---- field in this struct
[INFO] [stdout] 125 |         message: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `location` is never read
[INFO] [stdout]    --> tests/test_mcp_tool.rs:142:9
[INFO] [stdout]     |
[INFO] [stdout] 141 |     struct Weather {
[INFO] [stdout]     |            ------- field in this struct
[INFO] [stdout] 142 |         location: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `expression` is never read
[INFO] [stdout]    --> tests/test_mcp_tool.rs:160:9
[INFO] [stdout]     |
[INFO] [stdout] 159 |     struct Calc {
[INFO] [stdout]     |            ---- field in this struct
[INFO] [stdout] 160 |         expression: String,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `path` is never read
[INFO] [stdout]    --> tests/test_mcp_tool.rs:179:9
[INFO] [stdout]     |
[INFO] [stdout] 178 |     struct DeleteFile {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] 179 |         path: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]    --> tests/test_mcp_tool.rs:201:9
[INFO] [stdout]     |
[INFO] [stdout] 200 |     struct GetUser {
[INFO] [stdout]     |            ------- field in this struct
[INFO] [stdout] 201 |         id: String,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `data` is never read
[INFO] [stdout]    --> tests/test_mcp_tool.rs:222:9
[INFO] [stdout]     |
[INFO] [stdout] 221 |     struct LongTask {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] 222 |         data: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `value` is never read
[INFO] [stdout]    --> tests/test_mcp_tool.rs:239:9
[INFO] [stdout]     |
[INFO] [stdout] 238 |     struct QuickOp {
[INFO] [stdout]     |            ------- field in this struct
[INFO] [stdout] 239 |         value: i32,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `flag` is never read
[INFO] [stdout]    --> tests/test_mcp_tool.rs:249:9
[INFO] [stdout]     |
[INFO] [stdout] 248 |     struct NoTask {
[INFO] [stdout]     |            ------ field in this struct
[INFO] [stdout] 249 |         flag: bool,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `input` is never read
[INFO] [stdout]    --> tests/test_mcp_tool.rs:288:9
[INFO] [stdout]     |
[INFO] [stdout] 287 |     struct IconTool {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] 288 |         input: String,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `username`, `email`, `age`, and `tags` are never read
[INFO] [stdout]    --> tests/test_mcp_tool.rs:327:9
[INFO] [stdout]     |
[INFO] [stdout] 326 |     struct UserCreate {
[INFO] [stdout]     |            ---------- fields in this struct
[INFO] [stdout] 327 |         username: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 328 |         email: String,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 329 |         age: Option<i32>,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 330 |         tags: Vec<String>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `input` is never read
[INFO] [stdout]    --> tests/test_mcp_tool.rs:377:9
[INFO] [stdout]     |
[INFO] [stdout] 376 |     struct FallbackNameTool {
[INFO] [stdout]     |            ---------------- field in this struct
[INFO] [stdout] 377 |         input: String,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `x` is never read
[INFO] [stdout]    --> tests/test_mcp_tool.rs:394:9
[INFO] [stdout]     |
[INFO] [stdout] 393 |     struct OldTool {
[INFO] [stdout]     |            ------- field in this struct
[INFO] [stdout] 394 |         x: i32,
[INFO] [stdout]     |         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `path` and `content` are never read
[INFO] [stdout]    --> tests/test_mcp_tool.rs:424:13
[INFO] [stdout]     |
[INFO] [stdout] 422 |     pub struct WriteFileTool {
[INFO] [stdout]     |                ------------- fields in this struct
[INFO] [stdout] 423 |         /// The target file's path.
[INFO] [stdout] 424 |         pub path: String,
[INFO] [stdout]     |             ^^^^
[INFO] [stdout] 425 |         /// The string content to be written to the file
[INFO] [stdout] 426 |         pub content: String,
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 24.65s
[INFO] running `Command { std: "docker" "inspect" "5427e55877e1e1a52180820a7b81d4cf65a29f2c542a3e227f0fa528a7d8e697", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5427e55877e1e1a52180820a7b81d4cf65a29f2c542a3e227f0fa528a7d8e697", kill_on_drop: false }`
[INFO] [stdout] 5427e55877e1e1a52180820a7b81d4cf65a29f2c542a3e227f0fa528a7d8e697
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 50b53f29e816dfdc5e647e5bd27f31b11685ae89d6803e07840d1f04b82834f0
[INFO] running `Command { std: "docker" "start" "-a" "50b53f29e816dfdc5e647e5bd27f31b11685ae89d6803e07840d1f04b82834f0", kill_on_drop: false }`
[INFO] [stderr] warning: unused imports: `JsonSchema` and `mcp_elicit`
[INFO] [stderr]  --> tests/test_mcp_resource.rs:1:23
[INFO] [stderr]   |
[INFO] [stderr] 1 | use rust_mcp_macros::{mcp_elicit, mcp_resource, mcp_resource_template, JsonSchema};
[INFO] [stderr]   |                       ^^^^^^^^^^                                       ^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]   --> tests/test_mcp_resource.rs:94:26
[INFO] [stderr]    |
[INFO] [stderr] 94 |     struct CompanyLogo {};
[INFO] [stderr]    |                          ^ help: remove this semicolon
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `rust_mcp_macros::mcp_resource`
[INFO] [stderr]   --> tests/test_mcp_resource.rs:80:9
[INFO] [stderr]    |
[INFO] [stderr] 80 |     use rust_mcp_macros::mcp_resource;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `api_key` is never read
[INFO] [stderr]   --> tests/test_mcp_resource.rs:20:13
[INFO] [stderr]    |
[INFO] [stderr] 19 |     struct MyResource {
[INFO] [stderr]    |            ---------- field in this struct
[INFO] [stderr] 20 |         pub api_key: String,
[INFO] [stderr]    |             ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `api_key` is never read
[INFO] [stderr]   --> tests/test_mcp_resource.rs:57:13
[INFO] [stderr]    |
[INFO] [stderr] 56 |     struct MyResource {
[INFO] [stderr]    |            ---------- field in this struct
[INFO] [stderr] 57 |         pub api_key: String,
[INFO] [stderr]    |             ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `rust-mcp-macros` (test "test_mcp_resource") generated 5 warnings (run `cargo fix --test "test_mcp_resource" -p rust-mcp-macros` to apply 2 suggestions)
[INFO] [stderr] warning: unused imports: `ElicitRequestFormParams` and `ElicitRequestUrlParams`
[INFO] [stderr]  --> tests/test_mcp_elicit.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 |     ElicitRequestFormParams, ElicitRequestParams, ElicitRequestUrlParams, ElicitResultContent,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^                       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `name`, `email`, and `tags` are never read
[INFO] [stderr]    --> tests/test_mcp_elicit.rs:107:13
[INFO] [stderr]     |
[INFO] [stderr] 106 |     pub struct RequiredFields {
[INFO] [stderr]     |                -------------- fields in this struct
[INFO] [stderr] 107 |         pub name: String,
[INFO] [stderr]     |             ^^^^
[INFO] [stderr] 108 |         pub email: String,
[INFO] [stderr]     |             ^^^^^
[INFO] [stderr] 109 |         pub tags: Vec<String>,
[INFO] [stderr]     |             ^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `RequiredFields` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `age` and `active` are never read
[INFO] [stderr]    --> tests/test_mcp_elicit.rs:157:13
[INFO] [stderr]     |
[INFO] [stderr] 156 |     pub struct TypeSensitive {
[INFO] [stderr]     |                ------------- fields in this struct
[INFO] [stderr] 157 |         pub age: i32,
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 158 |         pub active: bool,
[INFO] [stderr]     |             ^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `TypeSensitive` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `name`, `age`, and `is_admin` are never read
[INFO] [stderr]    --> tests/test_mcp_elicit.rs:205:13
[INFO] [stderr]     |
[INFO] [stderr] 204 |     pub struct WithOptionals {
[INFO] [stderr]     |                ------------- fields in this struct
[INFO] [stderr] 205 |         pub name: String,
[INFO] [stderr]     |             ^^^^
[INFO] [stderr] 206 |         pub age: i64,
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 207 |         pub is_admin: bool,
[INFO] [stderr]     |             ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `WithOptionals` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `token` is never read
[INFO] [stderr]    --> tests/test_mcp_elicit.rs:270:13
[INFO] [stderr]     |
[INFO] [stderr] 269 |     pub struct ExternalForm {
[INFO] [stderr]     |                ------------ field in this struct
[INFO] [stderr] 270 |         pub token: String,
[INFO] [stderr]     |             ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `ExternalForm` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `mcp_elicit`
[INFO] [stderr]  --> tests/test_mcp_tool.rs:4:23
[INFO] [stderr]   |
[INFO] [stderr] 4 | use rust_mcp_macros::{mcp_elicit, JsonSchema};
[INFO] [stderr]   |                       ^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `CallToolRequestParams`, `ElicitRequestFormParams`, `ElicitRequestParams`, `ElicitResultContentPrimitive`, `ElicitResultContent`, and `RpcError`
[INFO] [stderr]  --> tests/test_mcp_tool.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 |     CallToolRequestParams, ElicitRequestFormParams, ElicitRequestParams, ElicitResultContent,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 7 |     ElicitResultContentPrimitive, RpcError,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `id`, `name`, `email`, and `tags` are never read
[INFO] [stderr]   --> tests/test_mcp_tool.rs:49:13
[INFO] [stderr]    |
[INFO] [stderr] 47 |     struct User {
[INFO] [stderr]    |            ---- fields in this struct
[INFO] [stderr] 48 |         /// This is a fallback description from doc comment.
[INFO] [stderr] 49 |         pub id: i32,
[INFO] [stderr]    |             ^^
[INFO] [stderr] ...
[INFO] [stderr] 57 |         pub name: String,
[INFO] [stderr]    |             ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 65 |         pub email: Option<String>,
[INFO] [stderr]    |             ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 73 |         pub tags: Vec<String>,
[INFO] [stderr]    |             ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `message` is never read
[INFO] [stderr]    --> tests/test_mcp_tool.rs:125:9
[INFO] [stderr]     |
[INFO] [stderr] 124 |     struct Echo {
[INFO] [stderr]     |            ---- field in this struct
[INFO] [stderr] 125 |         message: String,
[INFO] [stderr]     |         ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `location` is never read
[INFO] [stderr]    --> tests/test_mcp_tool.rs:142:9
[INFO] [stderr]     |
[INFO] [stderr] 141 |     struct Weather {
[INFO] [stderr]     |            ------- field in this struct
[INFO] [stderr] 142 |         location: String,
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `expression` is never read
[INFO] [stderr]    --> tests/test_mcp_tool.rs:160:9
[INFO] [stderr]     |
[INFO] [stderr] 159 |     struct Calc {
[INFO] [stderr]     |            ---- field in this struct
[INFO] [stderr] 160 |         expression: String,
[INFO] [stderr]     |         ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `path` is never read
[INFO] [stderr]    --> tests/test_mcp_tool.rs:179:9
[INFO] [stderr]     |
[INFO] [stderr] 178 |     struct DeleteFile {
[INFO] [stderr]     |            ---------- field in this struct
[INFO] [stderr] 179 |         path: String,
[INFO] [stderr]     |         ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `id` is never read
[INFO] [stderr]    --> tests/test_mcp_tool.rs:201:9
[INFO] [stderr]     |
[INFO] [stderr] 200 |     struct GetUser {
[INFO] [stderr]     |            ------- field in this struct
[INFO] [stderr] 201 |         id: String,
[INFO] [stderr]     |         ^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `data` is never read
[INFO] [stderr]    --> tests/test_mcp_tool.rs:222:9
[INFO] [stderr]     |
[INFO] [stderr] 221 |     struct LongTask {
[INFO] [stderr]     |            -------- field in this struct
[INFO] [stderr] 222 |         data: String,
[INFO] [stderr]     |         ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `value` is never read
[INFO] [stderr]    --> tests/test_mcp_tool.rs:239:9
[INFO] [stderr]     |
[INFO] [stderr] 238 |     struct QuickOp {
[INFO] [stderr]     |            ------- field in this struct
[INFO] [stderr] 239 |         value: i32,
[INFO] [stderr]     |         ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `flag` is never read
[INFO] [stderr]    --> tests/test_mcp_tool.rs:249:9
[INFO] [stderr]     |
[INFO] [stderr] 248 |     struct NoTask {
[INFO] [stderr]     |            ------ field in this struct
[INFO] [stderr] 249 |         flag: bool,
[INFO] [stderr]     |         ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `input` is never read
[INFO] [stderr]    --> tests/test_mcp_tool.rs:288:9
[INFO] [stderr]     |
[INFO] [stderr] 287 |     struct IconTool {
[INFO] [stderr]     |            -------- field in this struct
[INFO] [stderr] 288 |         input: String,
[INFO] [stderr]     |         ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `username`, `email`, `age`, and `tags` are never read
[INFO] [stderr]    --> tests/test_mcp_tool.rs:327:9
[INFO] [stderr]     |
[INFO] [stderr] 326 |     struct UserCreate {
[INFO] [stderr]     |            ---------- fields in this struct
[INFO] [stderr] 327 |         username: String,
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr] 328 |         email: String,
[INFO] [stderr]     |         ^^^^^
[INFO] [stderr] 329 |         age: Option<i32>,
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 330 |         tags: Vec<String>,
[INFO] [stderr]     |         ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `input` is never read
[INFO] [stderr]    --> tests/test_mcp_tool.rs:377:9
[INFO] [stderr]     |
[INFO] [stderr] 376 |     struct FallbackNameTool {
[INFO] [stderr]     |            ---------------- field in this struct
[INFO] [stderr] 377 |         input: String,
[INFO] [stderr]     |         ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `x` is never read
[INFO] [stderr]    --> tests/test_mcp_tool.rs:394:9
[INFO] [stderr]     |
[INFO] [stderr] 393 |     struct OldTool {
[INFO] [stderr]     |            ------- field in this struct
[INFO] [stderr] 394 |         x: i32,
[INFO] [stderr]     |         ^
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stderr] warning: fields `path` and `content` are never read
[INFO] [stdout] running 61 tests
[INFO] [stderr]    --> tests/test_mcp_tool.rs:424:13
[INFO] [stderr]     |
[INFO] [stderr] 422 |     pub struct WriteFileTool {
[INFO] [stderr]     |                ------------- fields in this struct
[INFO] [stderr] 423 |         /// The target file's path.
[INFO] [stderr] 424 |         pub path: String,
[INFO] [stderr]     |             ^^^^
[INFO] [stderr] 425 |         /// The string content to be written to the file
[INFO] [stderr] 426 |         pub content: String,
[INFO] [stderr]     |             ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `rust-mcp-macros` (test "test_mcp_elicit") generated 5 warnings (run `cargo fix --test "test_mcp_elicit" -p rust-mcp-macros` to apply 1 suggestion)
[INFO] [stderr] warning: `rust-mcp-macros` (test "test_mcp_tool") generated 16 warnings (run `cargo fix --test "test_mcp_tool" -p rust-mcp-macros` to apply 2 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rust_mcp_macros-267768dbf27183e4)
[INFO] [stdout] test resource::parser::tests::test_audience_with_non_string ... ok
[INFO] [stdout] test resource::parser::tests::test_icons_not_array ... ok
[INFO] [stdout] test resource::parser::tests::test_invalid_meta_not_json_object ... ok
[INFO] [stdout] test resource::parser::tests::test_all_attributes_with_simple_values ... ok
[INFO] [stdout] test resource::parser::tests::test_concat_in_string_fields ... ok
[INFO] [stdout] test resource::parser::tests::test_minimal_required_attributes ... ok
[INFO] [stdout] test resource::parser::tests::test_invalid_meta_not_string ... ok
[INFO] [stdout] test resource::parser::tests::test_missing_name ... ok
[INFO] [stdout] test resource::parser::tests::test_invalid_audience_not_array ... ok
[INFO] [stdout] test resource::parser::tests::test_invalid_concat_usage ... ok
[INFO] [stdout] test resource::parser::tests::test_invalid_audience ... ok
[INFO] [stdout] test resource::parser::tests::test_multiple_icons ... ok
[INFO] [stdout] test resource::parser::tests::test_unknown_attribute_is_ignored ... ok
[INFO] [stdout] test tool::parser::tests::test_empty_description_field ... ok
[INFO] [stdout] test resource::parser::tests::test_size_not_integer ... ok
[INFO] [stdout] test tool::parser::tests::test_empty_name_field ... ok
[INFO] [stdout] test resource::parser::tests::test_unsupported_expr_in_string_field ... ok
[INFO] [stdout] test tool::parser::tests::test_invalid_meta ... ok
[INFO] [stdout] test resource::parser::tests::test_duplicated_audience ... ok
[INFO] [stdout] test tool::parser::tests::test_missing_description ... ok
[INFO] [stdout] test tool::parser::tests::test_missing_name ... ok
[INFO] [stdout] test utils::tests::test_has_derive_empty_attrs ... ok
[INFO] [stdout] test utils::tests::test_get_doc_comment_trim_whitespace ... ok
[INFO] [stdout] test tool::parser::tests::test_valid_macro_attributes ... ok
[INFO] [stdout] test utils::tests::test_get_doc_comment_no_doc ... ok
[INFO] [stdout] test utils::tests::test_get_doc_comment_single_line ... ok
[INFO] [stdout] test utils::tests::test_has_derive_positive ... ok
[INFO] [stdout] test tool::parser::tests::test_non_object_meta ... ok
[INFO] [stdout] test utils::tests::test_inner_type ... ok
[INFO] [stdout] test utils::tests::test_get_doc_comment_multi_line ... ok
[INFO] [stdout] test utils::tests::test_has_derive ... ok
[INFO] [stdout] test utils::tests::test_json_schema_boolean ... ok
[INFO] [stdout] test utils::tests::test_might_be_struct_with_custom_type ... ok
[INFO] [stdout] test utils::tests::test_json_schema_option_of_number ... ok
[INFO] [stdout] test utils::tests::test_json_schema_string ... ok
[INFO] [stdout] test utils::tests::test_is_vec ... ok
[INFO] [stdout] test utils::tests::test_json_schema_vec_of_string ... ok
[INFO] [stdout] test utils::tests::test_json_schema_with_doc_comment ... ok
[INFO] [stdout] test utils::tests::test_might_be_struct ... ok
[INFO] [stdout] test utils::tests::test_might_be_struct_with_empty_type_path ... ok
[INFO] [stdout] test utils::tests::test_renamed_field ... ok
[INFO] [stdout] test utils::tests::test_renamed_field_basic ... ok
[INFO] [stdout] test utils::tests::test_might_be_struct_with_generic_arguments ... ok
[INFO] [stdout] test utils::tests::test_might_be_struct_with_namespaced_type ... ok
[INFO] [stdout] test utils::tests::test_might_be_struct_with_primitive_type ... ok
[INFO] [stdout] test utils::tests::test_renamed_field_ignores_other_serde_keys ... ok
[INFO] [stdout] test utils::tests::test_is_option ... ok
[INFO] [stdout] test utils::tests::test_has_derive_no_derive_attr ... ok
[INFO] [stdout] test utils::tests::test_json_schema_custom_struct ... ok
[INFO] [stdout] test utils::tests::test_renamed_field_without_rename ... ok
[INFO] [stdout] test utils::tests::test_has_derive_multiple_attrs ... ok
[INFO] [stdout] test resource::parser::tests::test_missing_uri ... ok
[INFO] [stdout] test utils::tests::test_has_derive_negative ... ok
[INFO] [stdout] test utils::tests::test_type_to_json_schema_string ... ok
[INFO] [stdout] test utils::tests::test_renamed_field_irrelevant_attribute ... ok
[INFO] [stdout] test utils::tests::test_type_to_json_schema_option ... ok
[INFO] [stdout] test utils::tests::test_json_schema_fallback_unknown ... ok
[INFO] [stdout] test utils::tests::test_json_schema_integer ... ok
[INFO] [stdout] test utils::tests::test_renamed_field_with_multiple_attrs ... ok
[INFO] [stdout] test resource::parser::tests::test_empty_name ... ok
[INFO] [stdout] test utils::tests::test_type_to_json_schema_vec ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 61 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.29s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/test_mcp_elicit.rs (/opt/rustwide/target/debug/deps/test_mcp_elicit-f59d543346601e58)
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test readme_example_elicitation ... ok
[INFO] [stdout] test test_empty_content_map_becomes_default_values ... ok
[INFO] [stdout] test test_empty_string_array_when_missing_optional_vec ... ok
[INFO] [stdout] test readme_example_elicitation_url ... ok
[INFO] [stdout] test test_missing_required_field_returns_error ... ok
[INFO] [stdout] test test_numeric_types_variations ... ok
[INFO] [stdout] test test_url_basic_conversion ... ok
[INFO] [stdout] test test_type_mismatch_returns_error ... ok
[INFO] [stdout] test test_form_and_url_share_same_from_elicit_result_content_logic ... ok
[INFO] [stdout] test test_form_basic_conversion ... ok
[INFO] [stdout] test test_url_mode_with_elicitation_id ... ok
[INFO] [stdout] test test_string_array_empty_input_becomes_empty_vec ... ok
[INFO] [stdout] test test_extra_unknown_field_is_ignored ... ok
[INFO] [stdout] test test_boolean_handling ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/test_mcp_json_schema.rs (/opt/rustwide/target/debug/deps/test_mcp_json_schema-287ed87af619e43c)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test test_schema_number ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/test_mcp_resource.rs (/opt/rustwide/target/debug/deps/test_mcp_resource-57fcd604cec95ef9)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test adhoc ... ok
[INFO] [stdout] test full_annotated_resource ... ok
[INFO] [stdout] test full_annotated_resource_template ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/test_mcp_tool.rs (/opt/rustwide/target/debug/deps/test_mcp_tool-82ae28d78bd4ed01)
[INFO] [stdout] 
[INFO] [stdout] running 18 tests
[INFO] [stdout] test all_annotations_are_set ... ok
[INFO] [stdout] test execution_task_support_optional_and_forbidden ... ok
[INFO] [stdout] test basic_tool_name_and_description ... ok
[INFO] [stdout] test icons_empty_when_not_provided ... ok
[INFO] [stdout] test execution_task_support_required ... ok
[INFO] [stdout] test icons_full_support ... ok
[INFO] [stdout] test input_schema_has_correct_required_fields ... ok
[INFO] [stdout] test meta_json_is_parsed_correctly ... ok
[INFO] [stdout] test readme_example_tool ... ok
[INFO] [stdout] test test_alias ... ok
[INFO] [stdout] test test_multi_line_description ... ok
[INFO] [stdout] test test_attributes ... ok
[INFO] [stdout] test title_is_set ... ok
[INFO] [stdout] test meta_is_ignored_when_feature_off ... ok
[INFO] [stdout] test tool_name_fallback_when_not_provided ... ok
[INFO] [stderr]    Doc-tests rust_mcp_macros
[INFO] [stdout] test test_rename ... ok
[INFO] [stdout] test partial_annotations_some_set_some_not ... ok
[INFO] [stdout] test properties_are_correctly_mapped ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 18 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test src/lib.rs - mcp_tool (line 40) ... ignored
[INFO] [stdout] test src/lib.rs - mcp_resource_template (line 745) ... ok
[INFO] [stdout] test src/lib.rs - mcp_resource (line 628) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.75s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "50b53f29e816dfdc5e647e5bd27f31b11685ae89d6803e07840d1f04b82834f0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "50b53f29e816dfdc5e647e5bd27f31b11685ae89d6803e07840d1f04b82834f0", kill_on_drop: false }`
[INFO] [stdout] 50b53f29e816dfdc5e647e5bd27f31b11685ae89d6803e07840d1f04b82834f0
